Imports CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.Shared

Imports System.Web.Mail



Public Class Form1

    Dim cryRpt As New ReportDocument

    Dim pdfFile As String = "c:\ProductReport1.pdf"



    Private Sub Button1_Click(ByVal sender As System.Object, _

    ByVal e As System.EventArgs) Handles Button1.Click

        cryRpt.Load("PUT CRYSTAL REPORT PATH HERE\CrystalReport1.rpt")

        CrystalReportViewer1.ReportSource = cryRpt

        CrystalReportViewer1.Refresh()

    End Sub



    Private Sub Button2_Click(ByVal sender As System.Object, _

    ByVal e As System.EventArgs) Handles Button2.Click

        Try

            Dim CrExportOptions As ExportOptions

            Dim CrDiskFileDestinationOptions As New _

            DiskFileDestinationOptions()

            Dim CrFormatTypeOptions As New PdfRtfWordFormatOptions

            CrDiskFileDestinationOptions.DiskFileName = pdfFile

            CrExportOptions = cryRpt.ExportOptions

            With CrExportOptions

                .ExportDestinationType = ExportDestinationType.DiskFile

                .ExportFormatType = ExportFormatType.PortableDocFormat

                .DestinationOptions = CrDiskFileDestinationOptions

                .FormatOptions = CrFormatTypeOptions

            End With

            cryRpt.Export()

        Catch ex As Exception

            MsgBox(ex.ToString)

        End Try

        sendMail()

    End Sub



    Private Sub sendMail()

        Try

            Dim Smtp As SmtpMail

            SmtpMail.SmtpServer.Insert(0, "your hostname")

            Dim Msg As MailMessage = New MailMessage

            Msg.To = "to address here"

            Msg.From = "from address here"

            Msg.Subject = "Crystal Report Attachment "

            Msg.Body = "Crystal Report Attachment "

            Msg.Attachments.Add(New MailAttachment(pdfFile))

            Smtp.Send(Msg)

        Catch ex As Exception

            MsgBox(ex.ToString)

        End Try

    End Sub

End Class


